<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Products extends CI_Controller 
{
	function __construct()
    {
        parent::__construct();
        session_start();
    }

    function categories()
    {
    	//prendo l'elenco delle categorie prodotto
    	$data['categorie'] = $this->Product_model->findAllCategories();

        $data['content'] = 'categories_list';
    	$this->load->view('master_view',$data);
    }

    function productslist($idCategoria)
    {
        $data['categoria'] = $this->Product_model->getCategory($idCategoria);
        $data['prodotti']  = $this->Product_model->getProducts($idCategoria);
        
        $data['content'] = 'products_list';
        $this->load->view('master_view',$data);   
    }

    function categorydelete($idCategoria)
    {
        $categoria = $this->Product_model->getCategory($idCategoria);
        $prodotti  = $this->Product_model->getProducts($idCategoria);

        if(!$this->input->post('submitted'))
        {
            $data['content'] = "categories_delete";
            $data['categoria'] = $categoria;
            $data['prodotti']  = $prodotti;

            $this->load->view('master_view',$data);
        }
        else
        {
            $this->Product_model->deleteCategory($categoria->id);
            $_SESSION['user_message'] = "Categoria Cancellata con successo";
            redirect('products/categories');
        }
    }

    function categoryedit($idCategoria)
    {
        $categoria = $this->Product_model->getCategory($idCategoria);
        $prodotti  = $this->Product_model->getProducts($idCategoria);

        if (!$_POST)
        {
            $data['content'] = "categories_edit";
            $data['categoria'] = $categoria;
            $data['prodotti']  = $prodotti;
            $this->load->view('master_view',$data);
        }
        else
        {
            $this->form_validation->set_error_delimiters('<span class="note error">', '</span>');

            $this->form_validation->set_rules('nome', 'nome', 'required');
            $this->form_validation->set_rules('descrizione', 'descrizione', 'required');
            
            if ($this->form_validation->run() == FALSE)
            {
                $data['content'] = "categories_edit";
                $data['categoria'] = $categoria;
                $data['prodotti']  = $prodotti;
                $this->load->view('master_view',$data);
            }
            else
            {

                $data = array(
                   'nome' => $this->input->post('nome') ,
                   'descrizione' => $this->input->post('descrizione') ,
                   'colore' => '000000',
                   'ordine' => 0,
                   'mobile' => 1,
                   'prodotti_count' => 0,
                   'nascosto' => ($this->input->post('visibile') == "on" ? 1 : 0),
                   'gg_apertura' => '111111'
                );

                $this->Product_model->updateCategory($categoria->id,$data);
                $_SESSION['user_message'] = "Categoria Modificata con successo";
                redirect('products/categories');
            }
        }
    }

    function category_new()
    {
        if (!$_POST)
        {
            $data['content'] = "categories_new";
            $this->load->view('master_view',$data);
        }
        else
        {
            $this->form_validation->set_error_delimiters('<span class="note error">', '</span>');

            $this->form_validation->set_rules('nome', 'nome', 'required');
            $this->form_validation->set_rules('descrizione', 'descrizione', 'required');
            
            if ($this->form_validation->run() == FALSE)
            {
                $data['content'] = "categories_new";
                $this->load->view('master_view',$data);
            }
            else
            {

                $data = array(
                   'nome' => $this->input->post('nome') ,
                   'descrizione' => $this->input->post('descrizione') ,
                   'colore' => '000000',
                   'ordine' => 0,
                   'mobile' => 1,
                   'prodotti_count' => 0,
                   'nascosto' => ($this->input->post('visibile') == "on" ? 1 : 0),
                   'gg_apertura' => '111111'
                );

                $this->Product_model->saveCategory($data);
                $_SESSION['user_message'] = "Categoria Inserita con successo";
                redirect('products/categories');
            }
        }
    }

    function product_new($idCategoria)
    {
        $categoria = $this->Product_model->getCategory($idCategoria);
        $data['categoria'] = $categoria;
        
        if (!$_POST)
        {
            $data['content'] = "product_new";
            $this->load->view('master_view',$data);
        }
        else
        {
            $this->form_validation->set_error_delimiters('<span class="note error">', '</span>');

            $this->form_validation->set_rules('nome', 'nome', 'required');
            $this->form_validation->set_rules('descrizione', 'descrizione', 'required');
            $this->form_validation->set_rules('prezzo', 'Prezzo', 'required|decimal');
            $this->form_validation->set_rules('prezzofferta', 'Prezzo Offerta', 'decimal');
            $this->form_validation->set_rules('fileupload', 'Immagine', 'required');

            if ($this->form_validation->run() == FALSE)
            {
                $data['content'] = "product_new";
                $this->load->view('master_view',$data);
            }
            else
            {

                $data = array(
                   'nome' => $this->input->post('nome') ,
                   'descrizione' => $this->input->post('descrizione') ,
                   'prezzo' => $this->input->post('prezzo'),
                   'inofferta' => ($this->input->post('inofferta') == "on" ? 1 : 0),
                   'prezzoOfferta' => $this->input->post('prezzofferta'),
                   'nascosto' =>  ($this->input->post('nascosto') == "on" ? 1 : 0),
                   'mobile' => ($this->input->post('mobile') == "on" ? 1 : 0),
                   'foto_url' => '111111',
                   'thumb_url' => '11',
                   'cancellato' => 0
                );

                $this->Product_model->saveProduct($data);
                $_SESSION['user_message'] = "Prodotto Inserito con successo";
                redirect('products/categories/'.$categoria->id);
            }
        }
    }
}

?>